package com.sanqi.work.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.sanqi.common.annotation.Excel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sanqi.common.core.domain.BaseEntity;

/**
 * 工作计件阶梯价格对象 work_step_level_price
 * 
 * @author duany
 * @date 2025-10-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("work_step_level_price")
public class WorkStepLevelPrice extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;

    /** 级别ID */
    @Excel(name = "级别ID")
    @TableField(value="level_id")
    private String levelId;

    /** 阶梯计价 */
    @Excel(name = "阶梯计价")
    @TableField(value="step_price")
    private BigDecimal stepPrice;

    /** 阶梯完成量 */
    @Excel(name = "阶梯完成量")
    @TableField(value="step_count")
    private Long stepCount;
    
    /** 阶梯完成量 */
    @Excel(name = "阶梯完成量")
    @TableField(value="step_max_count")
    private Long stepMaxCount;
    
    /** 阶梯档位 0:接线基本量 1:一档 2:二挡 3:三挡 */
    @Excel(name = "阶梯档位 0:接线基本量 1:一档 2:二挡 3:三挡")
    @TableField(value="step_level")
    private Long stepLevel;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setLevelId(String levelId) 
    {
        this.levelId = levelId;
    }

    public String getLevelId() 
    {
        return levelId;
    }

    public void setStepPrice(BigDecimal stepPrice) 
    {
        this.stepPrice = stepPrice;
    }

    public BigDecimal getStepPrice() 
    {
        return stepPrice;
    }

    public void setStepCount(Long stepCount) 
    {
        this.stepCount = stepCount;
    }

    public Long getStepCount() 
    {
        return stepCount;
    }

    public void setStepLevel(Long stepLevel) 
    {
        this.stepLevel = stepLevel;
    }

    public Long getStepLevel() 
    {
        return stepLevel;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("levelId", getLevelId())
            .append("stepPrice", getStepPrice())
            .append("stepCount", getStepCount())
            .append("stepLevel", getStepLevel())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .append("remark", getRemark())
            .toString();
    }
}
